1. Technical Field
The present invention relates generally to speech signal processing and, more particularly, to processors designed to implement codebook-excited linear prediction (CELP) speech coding and decoding.
2. Description of the Related Art
Speech signal encoding lowers the number of bits required to transmit an accurate digital representation of a speech signal. Lowering the bit rate without decreasing the data transmission rate, in turn, advantageously allows the number of speech signals transmitted within a given bandwidth to be increased. A lower bit rate may also provide better error protection. One particular encoding scheme, codebook-excited linear prediction (CELP) coding, has been used to lower the bit rate from 64 Kbit/sec (the rate at which standard pulse-code modulated speech is transmitted) to as low as 4.0 Kbit/sec. CELP coders are a class of analysis-by-synthesis coders. That is, the coding algorithm chooses coding parameters by reconstructing the speech signal from the potential coding parameters. As a result, a CELP coder performs the same algorithms utilized by a CELP decoder to determine which encoded signal is optimal.
In a low-delay CELP system (LD-CELP) such as the one set forth in CCITT Recommendation G.728, "Coding of Speech at 16 kbit/s Using Low-Delay Code Excited Linear Prediction" (Geneva, September, 1992), the reconstructed speech signal is synthesized by filtering an excitation signal through a synthesis filter constructed from short-term prediction coefficients. The excitation signal is derived from a gain-scaled contribution from a fixed codebook, which contains a set of excitation vectors that are characteristic of the speech signal being encoded.
The optimal codebook indices and gain coefficients are typically determined through the analysis-by-synthesis procedure. More particularly, each codebook vector may be evaluated to determine the vector and gain parameters that minimize the error between the synthesized signal and the actual speech signal.
Because each codebook entry must be evaluated for each speech segment, prior methods of implementing the CELP coder (and corresponding decoder) have required a high-performance, general-purpose digital signal processor (DSP). This general purpose DSP must also be capable of determining the optimum codebook vectors and gain parameters in real-time. Adequate general purpose DSPs, however, have been found to be undesirably expensive.